// BoundingFrustum.h
// 
/////////////////////////////////////////////////////////

#ifndef BOUNDING_FRUSTUM_HPP
#define BOUNDING_FRUSTUM_HPP

#include "Plane.hpp"
#include "AABB.hpp"

class BoundingFrustum
{

public:
    BoundingFrustum(float *matrix);
    enum
    {
        OUTSIDE,
        INTERSECT,
        INSIDE
    };
    
    Plane planes[6];
    
    int BoxInFrustum(AABB &box);    
    //int sphereInFrustum(Vec3f &p, float raio);
    //int boxInFrustum(AABox &b);

private:

    enum 
    {
        TOP = 0,
        BOTTOM,
        LEFT,
        RIGHT,
        NEARP,
        FARP    
    };

};

#endif
